package com.hxm.demo.leetcode;

import java.util.Scanner;

/**
 * @author huangxiaoming
 * @date 2022/5/29
 **/
public class Test15 {
    /**
     * 描述
     * 输入一个 int 型的正整数，计算出该 int 型数据在内存中存储时 1 的个数。
     * <p>
     * 数据范围：保证在 32 位整型数字范围内
     * 输入描述：
     * 输入一个整数（int类型）
     * <p>
     * 输出描述：
     * 这个数转换成2进制后，输出1的个数
     *
     * @param args
     */
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            int n = in.nextInt();
            int res = 0;
            for (int i = 0; i < 32; i++) {
                if ((n & 1) == 1) {
                    res++;
                }
                n = n >>> 1;

            }
            System.out.println(res);
        }
    }
}
